// 实现节流函数
function throttle(cb, time) {
  let timer = null;

  return (...arg) => {
    if (timer) {
      return;
    }

    timer = setTimeout(() => {
      cb.apply(null, arg);
      timer = null;
    }, time);
  };
}

const res = throttle((data) => {
  console.log(data);
}, 100);

res(100);
res(200);

function antiShake(cb, time) {
  let timer = null;
  return (...arg) => {
    if (timer) {
      clearTimeout(timer);
    }

    timer = setTimeout(() => {
      cb.apply(null, arg);
      timer = null;
    }, time);
  };
}

const test = antiShake((data) => {
  console.log(data);
}, 100);

test(100);
test(200);
